package com.siwei.mes.mapper.experiment;

import com.siwei.mes.common.base.BaseMapper;
import com.siwei.mes.entity.experiment.ExperimentCheckItemorder;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 快检/批检与试验台账和小票的关系(ExperimentCheckItemorder)表数据库访问层
 *
 * @author linzi
 * @since 2024-01-11 21:56:10
 */
public interface ExperimentCheckItemorderMapper extends BaseMapper<ExperimentCheckItemorder> {
    /**
     * 获取所有
     *
     * @param entity
     * @return
     */
    List<ExperimentCheckItemorder> getList(ExperimentCheckItemorder entity);

    /**
     * 根据类型删除
     *
     * @param checkType
     */
    void deleteByCheckType(Integer checkType);

    /**
     * 根据试验项目code获取  每个试验委托 第一次创建的时间
     *
     * @param testCode 试验项目code
     * @return
     */
    List<ExperimentCheckItemorder> getFirstRecord(@Param("testCode") String testCode);

    /**
     * 根据条件删除 删除
     *
     * @param testCode      试验项目code
     * @param checkType     1-快检 2-批检
     * @param lastBatchTime 最后班次时间 == 最后创建时间
     */
    void deleteBatchInfo(@Param("testCode") String testCode, @Param("checkType") Integer checkType, @Param("lastBatchTime") String lastBatchTime);

    /**
     * 根据任务单查询
     *
     * @param fRwdh 任务单
     * @return
     */
    List<ExperimentCheckItemorder> selectByFrwdh(@Param("fRwdh") Integer fRwdh);

    void deleteByExperimentId(@Param("experimentId") Long experimentId);
}
